package com.wavefront.mtl.elements;

import com.wavefront.obj.elements.VertexG;

public class Material {

	private Texture texture;
	private VertexG Kd;

	private String name;
	private Integer ilumination;
	private RGB ambient;
	private RGB diffuse;
	private RGB specular;
	private RGB transmission;
	private Texture specularTexture;
	private Texture diffuseTexture;
	private Texture ambientTexture;

	public Material(String name) {
		this.name = name;
	}

	public RGB getAmbient() {
		return ambient;
	}

	public RGB getDiffuse() {
		return diffuse;
	}

	public Integer getIlumination() {
		return ilumination;
	}

	public VertexG getKd() {
		return Kd;
	}

	public String getName() {
		return name;
	}

	public RGB getSpecular() {
		return specular;
	}

	public Texture getTexture() {
		return texture;
	}

	public void setAmbient(RGB ambientRGB) {
		this.ambient = ambientRGB;
	}

	public void setDiffuse(RGB diffuseRGB) {
		this.diffuse = diffuseRGB;
	}

	public void setIlumination(Integer ilumination) {
		this.ilumination = ilumination;
	}

	public void setKa(VertexG kd) {
		Kd = kd;
	}

	public void setKd(VertexG kd) {
		Kd = kd;
	}

	public void setName(String name) {
		this.name = name;
	}

	public void setSpecular(RGB specularRGB) {
		this.specular  = specularRGB;
	}

	public void setTexture(Texture texture) {
		this.texture = texture;
	}

	public RGB getTransmission() {
		return transmission;
	}

	public void setTransmission(RGB transmission) {
		this.transmission = transmission;
	}

	public void setSpecularTexture(Texture texture) {
		this.specularTexture = texture;
	}

	public void setDiffuseTexture(Texture texture) {
		this.diffuseTexture = texture;
	}

	public void setAmbientTexture(Texture texture) {
		this.ambientTexture = texture;
	}

	public Texture getSpecularTexture() {
		return specularTexture;
	}

	public Texture getDiffuseTexture() {
		return diffuseTexture;
	}

	public Texture getAmbientTexture() {
		return ambientTexture;
	}

}
